<!DOCTYPE html><html xmlns:date="http://exslt.org/dates-and-times" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">
<meta charset="utf-8">
<title>Plurious Framework » \framework\helper\UnCaptcha</title>
<meta name="author" content="Mike van Riel">
<meta name="description" content="">
<link href="../css/template.css" rel="stylesheet" media="all">
<script src="../js/jquery-1.7.1.min.js" type="text/javascript"></script><script src="../js/jquery-ui-1.8.2.custom.min.js" type="text/javascript"></script><script src="../js/jquery.mousewheel.min.js" type="text/javascript"></script><script src="../js/bootstrap.js" type="text/javascript"></script><script src="../js/template.js" type="text/javascript"></script><script src="../js/prettify/prettify.min.js" type="text/javascript"></script><link rel="shortcut icon" href="../img/favicon.ico">
<link rel="apple-touch-icon" href="../img/apple-touch-icon.png">
<link rel="apple-touch-icon" sizes="72x72" href="../img/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="114x114" href="../img/apple-touch-icon-114x114.png">
</head>
<body>
<div class="navbar navbar-fixed-top">
<div class="navbar-inner"><div class="container">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></a><a class="brand" href="../index.html">Plurious Framework</a><div class="nav-collapse"><ul class="nav">
<li class="dropdown">
<a href="#api" class="dropdown-toggle" data-toggle="dropdown">
                                    API Documentation <b class="caret"></b></a><ul class="dropdown-menu">
<li><a>Namespaces</a></li>
<li><a href="../namespaces/framework.html"><i class="icon-th"></i> framework</a></li>
<li><a href="../namespaces/global.html"><i class="icon-th"></i> global</a></li>
<li><a href="../namespaces/plurious.html"><i class="icon-th"></i> plurious</a></li>
</ul>
</li>
<li class="dropdown" id="charts-menu">
<a href="#charts" class="dropdown-toggle" data-toggle="dropdown">
                                    Charts <b class="caret"></b></a><ul class="dropdown-menu"><li><a href="../graph_class.html"><i class="icon-list-alt"></i> Class hierarchy diagram</a></li></ul>
</li>
<li class="dropdown" id="reports-menu">
<a href="#reports" class="dropdown-toggle" data-toggle="dropdown">
                                    Reports <b class="caret"></b></a><ul class="dropdown-menu">
<li><a href="../errors.html"><i class="icon-remove-sign"></i> Errors 
                <span class="label label-info">439</span></a></li>
<li><a href="../markers.html"><i class="icon-map-marker"></i> Markers 
                <ul><li>todo 
                <span class="label label-info">82</span>
</li></ul></a></li>
<li><a href="../deprecated.html"><i class="icon-stop"></i> Deprecated elements 
                <span class="label label-info">0</span></a></li>
</ul>
</li>
</ul></div>
</div></div>
<div class="go_to_top"><a href="#___" style="color: inherit">Back to top  <i class="icon-upload icon-white"></i></a></div>
</div>
<div id="___" class="container">
<noscript><div class="alert alert-warning">
                            Javascript is disabled; several features are only available
                            if Javascript is enabled.
                        </div></noscript>
<div class="row">
<div class="span4">
<span class="btn-group visibility" data-toggle="buttons-checkbox"><button class="btn public active" title="Show public elements">Public</button><button class="btn protected" title="Show protected elements">Protected</button><button class="btn private" title="Show private elements">Private</button><button class="btn inherited active" title="Show inherited elements">Inherited</button></span><div class="btn-group view pull-right" data-toggle="buttons-radio">
<button class="btn details" title="Show descriptions and method names"><i class="icon-list"></i></button><button class="btn simple" title="Show only method names"><i class="icon-align-justify"></i></button>
</div>
<ul class="side-nav nav nav-list">
<li class="nav-header">
<i class="icon-custom icon-method"></i> Methods</li>
<li class="method public "><a href="#__construct" title="__construct :: Build a unique character replacement image template with instructions."><span class="description">Build a unique character replacement image template with instructions.</span><pre>__construct()</pre></a></li>
<li class="nav-header protected">» Protected</li>
<li class="method protected "><a href="#create_image" title="create_image :: "><span class="description">create_image()
        </span><pre>create_image()</pre></a></li>
<li class="nav-header private">» Private</li>
<li class="method private "><a href="#image_text" title="image_text :: Splits the string into correct length strings so they fit correctly
into the image."><span class="description">Splits the string into correct length strings so they fit correctly
into the image.</span><pre>image_text()</pre></a></li>
<li class="method private "><a href="#randomize" title="randomize :: Select a random word and a random character from that word for use in
the string modification."><span class="description">Select a random word and a random character from that word for use in
the string modification.</span><pre>randomize()</pre></a></li>
<li class="nav-header">
<i class="icon-custom icon-property"></i> Properties</li>
<li class="property public "><a href="#%24char" title="$char :: "><span class="description">$char</span><pre>$char</pre></a></li>
<li class="property public "><a href="#%24img" title="$img :: "><span class="description">$img</span><pre>$img</pre></a></li>
<li class="property public "><a href="#%24location" title="$location :: "><span class="description">$location</span><pre>$location</pre></a></li>
<li class="property public "><a href="#%24rules" title="$rules :: "><span class="description">$rules</span><pre>$rules</pre></a></li>
<li class="nav-header private">» Private</li>
<li class="property private "><a href="#%24config" title="$config :: "><span class="description">$config</span><pre>$config</pre></a></li>
<li class="property private "><a href="#%24img_font_size" title="$img_font_size :: "><span class="description">$img_font_size</span><pre>$img_font_size</pre></a></li>
<li class="property private "><a href="#%24img_height" title="$img_height :: "><span class="description">$img_height</span><pre>$img_height</pre></a></li>
<li class="property private "><a href="#%24img_text" title="$img_text :: "><span class="description">$img_text</span><pre>$img_text</pre></a></li>
<li class="property private "><a href="#%24img_width" title="$img_width :: "><span class="description">$img_width</span><pre>$img_width</pre></a></li>
<li class="property private "><a href="#%24input_length" title="$input_length :: "><span class="description">$input_length</span><pre>$input_length</pre></a></li>
<li class="property private "><a href="#%24language" title="$language :: "><span class="description">$language</span><pre>$language</pre></a></li>
<li class="property private "><a href="#%24margin" title="$margin :: "><span class="description">$margin</span><pre>$margin</pre></a></li>
</ul>
</div>
<div class="span8">
<a name="%5Cframework%5Chelper%5CUnCaptcha" id="\framework\helper\UnCaptcha"></a><ul class="breadcrumb">
<li>
<a href="../index.html"><i class="icon-custom icon-class"></i></a><span class="divider">\</span>
</li>
<li><a href="../namespaces/framework.html">framework</a></li>
<span class="divider">\</span><li><a href="../namespaces/framework.helper.html">helper</a></li>
<li class="active">
<span class="divider">\</span><a href="../classes/framework.helper.UnCaptcha.html">UnCaptcha</a>
</li>
</ul>
<div href="../classes/framework.helper.UnCaptcha.html" class="element class">
<p class="short_description">UnCaptcha Class</p>
<div class="details">
<p class="long_description"><p>A unique approach to the password entry problem.</p>

<p>The class constructs an easy to read image.  The image contains instructions
for selecting a specific (random) character from the text in the image and
further for placing that character either at the beginning or end of their
password.</p>

<p>The image could presumably be OCR'd very easily.  The benefit is that the
human must interpret the psuedo-random instructions.</p></p>
<table class="table table-bordered">
<tr>
<th>todo</th>
<td>Finish up this class</td>
</tr>
<tr>
<th>todo</th>
<td>Finish Documentation</td>
</tr>
<tr>
<th>author</th>
<td><a href="mailto:randy@plurious.com">Randy Casburn</a></td>
</tr>
<tr>
<th>copyright</th>
<td>Copyright Plurious Software, all rights reserved</td>
</tr>
<tr>
<th>license</th>
<td><a href="http://opensource.org/licenses/MIT">MIT</a></td>
</tr>
<tr>
<th>license</th>
<td><a href="http://www.opensource.org/licenses/mit-license.html">http://www.opensource.org/licenses/mit-license.html</a></td>
</tr>
<tr>
<th>link</th>
<td><a href="http://plurious.com/framework/documentation/classes/Front.html">http://plurious.com/framework/documentation/classes/Front.html</a></td>
</tr>
<tr>
<th>version</th>
<td>2.1</td>
</tr>
<tr>
<th>used_by</th>
<td>\framework\library\authentication\Auth</td>
</tr>
</table>
<h3>
<i class="icon-custom icon-method"></i> Methods</h3>
<a name="__construct" id="__construct"></a><div class="element clickable method public __construct" data-toggle="collapse" data-target=".__construct .collapse">
<h2>Build a unique character replacement image template with instructions.</h2>
<pre>__construct(string $string, int $input_length, int $width, int $height, int $font_size) </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description">
<p class="long_description"></p>
<h3>Parameters</h3>
<div class="subelement argument">
<h4>$string</h4>
<code>string</code><p>A string used for the process of modification</p></div>
<div class="subelement argument">
<h4>$input_length</h4>
<code>int</code><p>The length of the input string so random insertion</p></div>
<div class="subelement argument">
<h4>$width</h4>
<code>int</code><p>The width of the image created by this class</p></div>
<div class="subelement argument">
<h4>$height</h4>
<code>int</code><p>The height of the image created by this class</p></div>
<div class="subelement argument">
<h4>$font_size</h4>
<code>int</code><p>The GD default sizes must be 1-5</p>
</div>
</div></div>
</div>
<a name="create_image" id="create_image"></a><div class="element clickable method protected create_image" data-toggle="collapse" data-target=".create_image .collapse">
<h2>create_image()
        </h2>
<pre>create_image() </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="image_text" id="image_text"></a><div class="element clickable method private image_text" data-toggle="collapse" data-target=".image_text .collapse">
<h2>Splits the string into correct length strings so they fit correctly
into the image.</h2>
<pre>image_text() : array</pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description">
<p class="long_description"></p>
<h3>Returns</h3>
<div class="subelement response">
<code>array</code>Lines to be images</div>
</div></div>
</div>
<a name="randomize" id="randomize"></a><div class="element clickable method private randomize" data-toggle="collapse" data-target=".randomize .collapse">
<h2>Select a random word and a random character from that word for use in
the string modification.</h2>
<pre>randomize() </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"><p>Also chooses a random character position in
which to inject the random character for validation.</p></p></div></div>
</div>
<h3>
<i class="icon-custom icon-property"></i> Properties</h3>
<a name="%24char" id="$char"> </a><div class="element clickable property public $char" data-toggle="collapse" data-target=".$char .collapse">
<h2>$char</h2>
<pre>$char </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24img" id="$img"> </a><div class="element clickable property public $img" data-toggle="collapse" data-target=".$img .collapse">
<h2>$img</h2>
<pre>$img </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24location" id="$location"> </a><div class="element clickable property public $location" data-toggle="collapse" data-target=".$location .collapse">
<h2>$location</h2>
<pre>$location </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24rules" id="$rules"> </a><div class="element clickable property public $rules" data-toggle="collapse" data-target=".$rules .collapse">
<h2>$rules</h2>
<pre>$rules </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24config" id="$config"> </a><div class="element clickable property private $config" data-toggle="collapse" data-target=".$config .collapse">
<h2>$config</h2>
<pre>$config </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24img_font_size" id="$img_font_size"> </a><div class="element clickable property private $img_font_size" data-toggle="collapse" data-target=".$img_font_size .collapse">
<h2>$img_font_size</h2>
<pre>$img_font_size </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24img_height" id="$img_height"> </a><div class="element clickable property private $img_height" data-toggle="collapse" data-target=".$img_height .collapse">
<h2>$img_height</h2>
<pre>$img_height </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24img_text" id="$img_text"> </a><div class="element clickable property private $img_text" data-toggle="collapse" data-target=".$img_text .collapse">
<h2>$img_text</h2>
<pre>$img_text </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24img_width" id="$img_width"> </a><div class="element clickable property private $img_width" data-toggle="collapse" data-target=".$img_width .collapse">
<h2>$img_width</h2>
<pre>$img_width </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24input_length" id="$input_length"> </a><div class="element clickable property private $input_length" data-toggle="collapse" data-target=".$input_length .collapse">
<h2>$input_length</h2>
<pre>$input_length </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24language" id="$language"> </a><div class="element clickable property private $language" data-toggle="collapse" data-target=".$language .collapse">
<h2>$language</h2>
<pre>$language </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
<a name="%24margin" id="$margin"> </a><div class="element clickable property private $margin" data-toggle="collapse" data-target=".$margin .collapse">
<h2>$margin</h2>
<pre>$margin </pre>
<div class="labels"></div>
<div class="row collapse"><div class="detail-description"><p class="long_description"></p></div></div>
</div>
</div>
</div>
</div>
</div>
<div class="row"><footer class="span12">
            Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
            Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a7</a> and<br>
            generated on 2012-07-06T18:53:43-05:00.<br></footer></div>
</div>
</body>
</html>
